// 引入 uni-ajax 模块
import ajax from 'uni-ajax'

import { useStore } from '@/store/index.js';

// 创建请求实例
const instance = ajax.create({
  // 初始配置
  baseURL: import.meta.env.VITE_API_URL
})

// 添加请求拦截器
instance.interceptors.request.use(
  (config) => {
    console.log('请求拦截器', config);
    const token = uni.getStorageSync("token");
    const token1 = uni.getStorageSync("token1");
    const token2 = uni.getStorageSync("token2");

    if(token1) {
        config.header["Authori-zation"] = `${token1}`;
    } else if(token2) {
        config.header["Authori-zation"] = `${token2}`;
    } else if(token) {
        config.header["Authori-zation"] = `${token}`;
    }
    config.header = {
      ...config.header,
    };
    return config;
  },
  error => {
    // 对请求错误做些什么
    return Promise.reject(error)
  }
)

// 添加响应拦截器
instance.interceptors.response.use(
  response => {
    console.log(response,'sssssss')
    if(response.data.code == '401') {
      uni.showModal({
        title: '提示',
        content: '登录过期，请重新登录',
        showCancel: false,
        success: function() {
            uni.removeStorageSync('token1')
            uni.removeStorageSync('token')
            uni.removeStorageSync('userInfo1')
            uni.removeStorageSync('userInfo')
            useStore().user.SET_USERINFO('')
            useStore().user.SET_TOKEN('')
            useStore().user.SET_USERINFO1('')
            useStore().user.SET_TOKEN1('')
            useStore().common.SET_TABINDEX(0);
            uni.reLaunch({
                url: '/pages/index/index'
            })
        }
      })
      return
    }
    
    // 对响应数据做些什么
    return response?.data || {}
  },
  error => {
    // 对响应错误做些什么
    return Promise.reject(error)
  }
)

// 导出 create 创建后的实例
export default instance